// Mouse Buttons
#define SX       1
#define DX       2
#define SXDX     3
#define CN       4
#define SXCN     5
#define DXCN     6
#define SXDXCN   7
#define EMUSX    0x02
#define EMUDX    0x08
#define EMUCX    0x20

// Colors
#define BLACK    0
#define DBLUE    1
#define DGREEN   2
#define DAQUA    3
#define DRED     4
#define DPURPLE  5
#define DYELLOW  6
#define DWHITE   7
#define GRAY     8
#define LBLUE    9
#define LGREEN  10
#define LAQUA   11
#define LRED    12
#define LPURPLE 13
#define LYELLOW 14
#define LWHITE  15

// Keyboard
#define MOUSESX  0x01
#define MOUSEDX  0x02
#define CANCEL   0x03
#define MOUSECN  0x04
#define BACKSPC  0x08
#define TAB      0x09
#define CLS      0x0C
#define RETURN   0x0D

#define LOCK     0x14

#define ESC      0x1B

#define SPACE    0x20
#define PAGEUP   0x21
#define PAGEDWN  0x22
#define END      0x23
#define HOME     0x24
#define LEFT     0x25
#define UP       0x26
#define RIGHT    0x27
#define DOWN     0x28

#define PRINT    0x2C
#define INSERT   0x2D
#define CANC     0x2E

#define NUM0     0x30
#define NUM1     0x31
#define NUM2     0x32
#define NUM3     0x33
#define NUM4     0x34
#define NUM5     0x35
#define NUM6     0x36
#define NUM7     0x37
#define NUM8     0x38
#define NUM9     0x39

#define LETTERA  0x41
#define LETTERB  0x42
#define LETTERC  0x43
#define LETTERD  0x44
#define LETTERE  0x45
#define LETTERF  0x46
#define LETTERG  0x47
#define LETTERH  0x48
#define LETTERI  0x49
#define LETTERJ  0x4A
#define LETTERK  0x4B
#define LETTERL  0x4C
#define LETTERM  0x4D
#define LETTERN  0x4E
#define LETTERO  0x4F
#define LETTERP  0x50
#define LETTERQ  0x51
#define LETTERR  0x52
#define LETTERS  0x53
#define LETTERT  0x54
#define LETTERU  0x55
#define LETTERV  0x56
#define LETTERW  0x57
#define LETTERX  0x58
#define LETTERY  0x59
#define LETTERZ  0x5A
#define LWIN     0x5B
#define EWIN     0x5C
// 0x5E UNKNOW
#define SLEEP    0x5F
#define NUMPAD0  0x60
#define NUMPAD1  0x61
#define NUMPAD2  0x62
#define NUMPAD3  0x63
#define NUMPAD4  0x64
#define NUMPAD5  0x65
#define NUMPAD6  0x66
#define NUMPAD7  0x67
#define NUMPAD8  0x68
#define NUMPAD9  0x69
#define MULTIPLY 0x6A
#define ADD      0x6B
#define SEPARATOR 0x6C
#define SUBTRACT 0x6D
#define DECIMAL  0x6E
#define SLASH    0x6F
#define F1       0x70
#define F2       0x71
#define F3       0x72
#define F4       0x73
#define F5       0x74
#define F6       0x75
#define F7       0x76
#define F8       0x77
#define F9       0x78
#define F10      0x79
#define F11      0x7A
#define F12      0x7B
#define F13      0x7C
#define F14      0x7D
#define F15      0x7E
#define F16      0x7F
#define F17      0x80
#define F18      0x81
#define F19      0x82
#define F20      0x83
#define F21      0x84
#define F22      0x85
#define F23      0x86
#define F24      0x87
// 0x88~0x8F UNKNOW
#define NUMPAD   0x90
#define PAUSE    0x91
// 0x92~0x9F UNKNOW
#define SHIFTSX  0xA0
#define SHIFTDX  0xA1
#define CTRLSX   0xA2
#define CTRLDX   0xA3
#define ALTSX    0xA4
#define ALTDX    0xA5

//#define HOME     0xAC
#define MUTE     0xAD
#define VOLDOWN  0xAE
#define VOLUP    0xAF

#define FOWSONG  0xB0
#define BACKSONG 0xB1
#define STOP     0xB2
#define PLAY     0xB3
#define MAIL     0xB4
#define MEDIA    0xB5
// 0xB6 UNKNOW
#define CALC     0xB7


// Combo Keys
#define CAPSLOCKON   0x0080
#define ENHANCEDKEY  0x0100
#define LALTC        0x0002
#define LCTRLC       0x0008
#define NUMLOCKON    0x0020
#define RALTC        0x0001
#define CTRC         0x0004
#define SCROLLLOCKON 0x0040
#define SHIFTC       0x0010
